import {
  Controller,
  // Get,
  Post,
  Body,
  // Patch,
  // Param,
  // Delete,
  Req,
  UseInterceptors,
  UploadedFile,
  HttpStatus,
} from '@nestjs/common';
// import { CreateRichTextDto } from '../dtos/create-rich-text.dto';
// import { UpdateRichTextDto } from '../dtos/update-rich-text.dto';
import {
  ApiConsumes,
  ApiOperation,
  ApiResponse,
  ApiTags,
} from '@nestjs/swagger';
import { RichTextService } from '../services/rich-text.service';
import { FileInterceptor } from '@nestjs/platform-express';
import { UploadDto } from './../dtos/upload.dto';

@ApiTags('富文本')
@Controller('rich-text')
export class RichTextController {
  constructor(private readonly richTextService: RichTextService) {}

  // @Post()
  // @ApiOperation({
  //   summary: '添加富文本',
  // })
  // create(@Body() createRichTextDto: CreateRichTextDto) {
  //   return this.richTextService.create(createRichTextDto);
  // }

  // @Get()
  // findAll() {
  //   return this.richTextService.findAll();
  // }

  // @Get(':id')
  // findOne(@Param('id') id: string) {
  //   return this.richTextService.findOne(+id);
  // }

  // @Patch(':id')
  // update(
  //   @Param('id') id: string,
  //   @Body() updateRichTextDto: UpdateRichTextDto,
  // ) {
  //   return this.richTextService.update(+id, updateRichTextDto);
  // }

  // @Delete(':id')
  // remove(@Param('id') id: string) {
  //   return this.richTextService.remove(+id);
  // }

  @Post('uploadAvatar')
  @ApiOperation({
    summary: '上传头像',
  })
  @ApiResponse({
    status: HttpStatus.NO_CONTENT,
  })
  @ApiConsumes('multipart/form-data')
  @UseInterceptors(FileInterceptor('file'))
  async upload(
    @Req() req: any,
    @Body() uploadDto: UploadDto,
    @UploadedFile() file,
  ) {
    return this.richTextService.uploadAvatar(file);
  }
}
